import "dart:io";

main(List<String> args) {
  print("start");
  getDate();
  print("end");
}

void getDate() async {
  var res1 = await getNetworkData("1234");
  print(res1);
  var res2 = await getNetworkData(res1);
  print(res2);
  var res3 = await getNetworkData(res2);
  print(res3);
}

Future getNetworkData(String arg) async {
  return Future(() {
    sleep(Duration(seconds: 1));
    return "hhhhh " + arg; //如果返回的不是future，系统会自动包裹一层future
  });
}

// void getDate() {
//   // 1.调用第一次网络请求
//   getNetworkData("arg1").then((res) {
//    return getNetworkData(res);
//   }).then((res){
//     return getNetworkData(res);
//   }).then((res){
//     print(res);
//   });
// }

// Future getNetworkData(String arg) async {
//   return Future(() {
//     sleep(Duration(seconds: 1));
//     return "hello" + arg; //如果返回的不是future，系统会自动包裹一层future
//   });
// }
